A common problem for system administrators is the process required to install software or software updates onto one or more remote machines, commonly remote servers. Often, the only source of the software is an internet website which requires a user to accept a license agreement before the download can proceed. The user must navigate to the website in a browser, provide authentication, and/or accept terms and conditions before downloading. Thus, it is often not possible to download software from a source web server unless each step is followed within a web browser.
To facilitate the download of internet-hosted software from a source web server to a remote machine, there are known workarounds. One method is to have the administrator download the data to a local computer, and then upload it to the remote machine(s). A large problem with this method is that the local desktop may have a poor networking connection compared with the remote machine. For instance, the system administrator may be working at home on a slow internet connection, and unable to quickly download or upload files. Additionally, the uploading step has to be repeated when the software is placed on each remote machine. One workaround commonly used is saving the file to a shared network drive that is accessible by the remote machine. However, this does not solve the problem of network bandwidth, and still requires the local computer to download the file first.
Another method to place the software on the remote machine is to browse to the website from a web browser running on the remote machine(s). However, this is often not technically possible—for example, the website may require the use of a complete web browser to download the files (as opposed to using a command such as “wget”), and the way that many servers are configured means that they do not have web-browsers installed. Additionally, entering authentication information (such as passwords) on a remote machine may have implications for computer security, and it is impractical to initiate a remote session on the server for an often-trivial task.
What is needed in the art is a way to directly transfer files over the internet from a source web server onto a remote target machine through a file transfer being initiated on a local computer.